package cn.bugstack.chatgpt.domain.completions;

import cn.bugstack.chatgpt.domain.chat.Message;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.*;
import lombok.extern.slf4j.Slf4j;

import java.io.Serializable;
import java.util.List;

@Data
@Builder
@Slf4j
@JsonInclude(JsonInclude.Include.NON_NULL)
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class ComRequest implements Serializable {

    /** 搜索内容 */
    private List<Message> messages;
    /** 搜索引擎编码 */
    private String model = Model.GLM_Z1_FLASH.getCode();

/*    *//** 返回结果的条数，可填范围：1-50，默认为10 *//*
    private String count;
    *//** 限定搜索结果的范围 *//*
    private String searchDomainFilter;
    *//** 搜索指定时间范围内的网页 *//*
    private String searchRecencyFilter;
    *//** 控制网页摘要的字数 *//*
    private String contentSize;
    *//** 区分每次请求的唯一标识符 *//*
    private String requestId;*/
    /** 终端用户的唯一ID */
    private String user;

    @Getter
    @AllArgsConstructor
    public enum Model {
        GLM_Z1_FLASH("glm-z1-flash"),
        ;

        private String code;
    }
}
